package com.programmercarl.dp;

/**
 * https://leetcode.cn/problems/ones-and-zeroes/description/
 * 474.一和零 参考
 *
 * @author 田雨龙
 * @create 2025-02-17 22:25
 */
public class Test11 {
    public static void main(String[] args) {

    }

    public int findMaxForm(String[] strs, int m, int n) {
        int[][] dp=new int[m+1][n+1];
        for(String str:strs){
            int zeroNum=0;
            int oneNum=0;
            for(int i=0;i<str.length();i++){
                if(str.charAt(i)=='0'){
                    zeroNum++;
                }
                oneNum=str.length()-zeroNum;
            }
            for(int i=m;i>=zeroNum;i--){
                for(int j=n;j>=oneNum;j--){
                    dp[i][j]=Math.max(dp[i][j],dp[i-zeroNum][j-oneNum]+1);
                }
            }
        }
        return dp[m][n];
    }

}
